import request from '@/utils/request'

export interface TrademarkData {
  id?:number,
  tmName:string,
  logoUrl:string
}

type TrademarkPageListData =  {
  "records": TrademarkData[],
  "total": number,
  "size":number,
  "current": number,
  "searchCount": boolean,
  "pages":number
}

export default {

  /**
   * @description 删除商品
   * @param id 商品id
   * @returns Promise<null>
   */
  delete(id:number){
    return request.delete<any,null>(`/admin/product/baseTrademark/remove/${id}`)
  },

  /**
   * @description 查询获取分页列表
   * @param page 当前页码
   * @param limit 每页展示数量
   * @returns Promise<TrademarkPageListData>
   */
  getPageList(page:number,limit:number){
    return request.get<any,TrademarkPageListData>(`/admin/product/baseTrademark/${page}/${limit}`)
  },

  // 添加或者修改品牌都需要一个品牌对象的参数
  // 但是添加品牌的时候,对象当中没有id,因为id是后台数据库在增的时候自动生成的
  // 而修改的时候，我们]是修改的从数据库获取的数据，所以这个数据必然已经有了id
  // 添加和修改所带的参数，一个没有id-个有id,其余的属性都是一样的
  // POST /admin/product/baseTrademark/save
  // 新增BaseTrademark
  // PUT /admin/product/baseTrademark/update
  // 修改BaseTrademark
  /**
   * @description 添加和修改品牌
   * @param tradmark 品牌对象
   * @returns Promise<null>
   */
  addOrUpdata(tradmark:TrademarkData){
    if(tradmark.id){
      return request.put<any,null>('/admin/product/baseTrademark/update',tradmark)
    }else {
      return request.post<any,null>('/admin/product/baseTrademark/save',tradmark)
    }
  },


  /**
   * @description 获取所有的品牌列表
   * @url http://39.98.123.211:8510/admin/product/baseTrademark/getTrademarkList
   * @returns Promise<TrademarkData[]>
   */
  getList(){
    return request.get<any,TrademarkData[]>('/admin/product/baseTrademark/getTrademarkList')
  }
}